The present invention relates to a data distribution method, and more particularly to a stream data distribution method of redistributing data to compensate for lost stream data and changing the quality of stream data in accordance with a network load.
A stream data distribution method of compensating for lost stream data and changing the quality of stream data is known as disclosed in JP-A11-184780. This stream data distribution method disclosed in JP-A-11-184780 is used in a system having a distribution server and clients interconnected by a network.
The distribution server distributes stream data to a client over the network. The client loads a received stream data in a reception buffer. Stream data in the reception buffer is periodically read and displayed on a display.
The client refers to the state of the reception buffer in order to inspect whether there is stream data lost during network transfer. If there is a loss of stream data, the client transmits a redistribution request for lost stream data to the distribution server. Upon reception of the request, the distribution server executes a redistribution process for the requested stream data.
When the client refers to the state of the reception buffer, the client inspects whether the amount of stream data in the reception buffer becomes a predetermined amount or less and whether an occurrence probability of loss of stream data becomes a predetermined value or higher. If the data amount becomes the predetermined amount or less and the occurrence probability becomes the predetermined value or higher, the client transmits a quality change request to the distribution server. Upon reception of this request, the distribution server thins stream data to be transmitted thereafter in order to change the transmission rate (to lower a frame rate, i.e., time resolution).
With the method disclosed in JP-A-11-184780, the client is required to have a reception buffer of large capacity, resulting in an expensive client. Namely, according to the method disclosed in JP-A-11-184780, the client issues the redistribution request and quality change request to the redistribution server. If a network delay is large between the redistribution server and client, it takes a long time for redistributed data to arrive the client or for the rate change to be reflected, after the client transmits the redistribution request and quality change request. Therefore, unless the client prepares a reception buffer having a sufficient capacity, the reproduction process of reading the reception buffer starts or the underflow of the reception buffer occurs before arrival of redistributed data and reflection of a rate change.
With the method disclosed in JP-A-11-184780, a network bandwidth necessary for redistribution of stream data is broad. For example, in a system in which a distribution server and clients are connected via a plurality of routers, according to the method disclosed in JP-A-11-184780, even if stream data is lost in the network between intermediate routers, stream data is redistributed by using the bandwidth of the network from the distribution server to the client. The network bandwidth is consumed more than ideal redistribution of using the bandwidth of only the network between intermediate routers.
With the method disclosed in JP-A-11-184780, only the time resolution is lowered to change the quality of stream data. Even in the case that the image quality can be suppressed from being lowered if the space resolution is lowered, a degraded image quality on a display can be visually confirmed if the time resolution is lowered.